﻿namespace DTO.Clases
{
    /// <summary>
    /// Representa una clase para los datos de los Productos en la Factura de Proveedor.
    /// </summary>
    public class ProductoFacturaProveedor
    {
        /// <summary>
        /// Obtiene o establece el valor del Id unico de la relacion.
        /// </summary>
        public int Id { set; get; }

        /// <summary>
        /// Obtiene o establece el Numero de identificación unico de la Factura.
        /// </summary>
        public int IdFactura { set; get; }

        /// <summary>
        /// Obtiene o establece el valor del número de la factura de venta.
        /// </summary>
        public string NumeroFactura { set; get; }

        /// <summary>
        /// Obtiene o establece el Producto que carga en la relacion.
        /// </summary>
        public Producto Producto { set; get; }

        /// <summary>
        /// Obtiene o establece la cantidad del Producto cargado.
        /// </summary>
        public double Cantidad { set; get; }

        /// <summary>
        /// Obtiene o establece el lote del Producto cargado.
        /// </summary>
        public Lote Lote { set; get; }

        /// <summary>
        /// Obtiene o establece el Inventario del Producto cargado.
        /// </summary>
        public Inventario Inventario { set; get; }

        /// <summary>
        /// Establece la condición que indica si el registro se debe almacenar.
        /// </summary>
        public bool Save { set; get; }

        /// <summary>
        /// Inicializa una nueva instancia de la clase ProductoFacturaProveedor.
        /// </summary>
        public ProductoFacturaProveedor()
        {
            this.Id = 0;
            this.IdFactura = 0;
            this.NumeroFactura = ""; 
            this.Producto = new Producto();
            this.Cantidad = 0;
            this.Lote = new Lote();
            this.Inventario = new Inventario();
        }
    }
}